#pragma once
#include "UltimateSubsystemRegistryPrerequisites.h"
#include "UltimatePhysicsScene.h"
#include "UltimatePhysicsActor.h"
#include "UltimatePhysicsActorDesc.h"
#include "UltimateSubsystem.h"
#include "UltimateSubsystemRegistry.h"

class _UltimateSubsystemRegistryExport UltimatePhysicsSubsystem: public UltimateSubsystem
{

public:

	virtual Ogre::String  getSubsystemName()
	{
		return PHYSICS_SUBSYSTEM;
	}

	virtual bool initPhysics()=0;

	virtual UltimatePhysicsScene * createPhysicsScene()=0;
	virtual void destroyPhysicsScene()=0;

	UltimatePhysicsSubsystem(void);
	virtual ~UltimatePhysicsSubsystem(void);
	
};

